翻訳と辞書
Words near each other
・ GNU Free Documentation License
・ GNU Free System Distribution Guidelines
・ GNU FriBidi
・ GNU Fribidi
・ GNU FSDG
・ GNU General Public License
・ GNU General Public License version 2
・ GNU Go
・ GNU go
・ GNU GPL
・ GNU Guile
・ GNU Health
・ GNU Hurd
・ GNU IceCat
・ GNU IceWeasel
・ GNU Interpreter for Java
・ GNU ld
・ GNU Lesser General Public License
・ GNU LGPL
・ GNU Library General Public License


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

GNU Guile : ウィキペディア日本語版
GNU Guile


は プログラミング言語 のインタープリタ/バーチャルマシン1993年に初めてリリースされた〔Blandy 1997, p. 102.〕。
POSIXシステムコールのモジュール化された拡張やAPL アレイの機能などを含みオブジェクト〔「」 、、1997年, p.89.〕 ライブラリとしてパッケージングされている。「」を使うことで、を他のプログラムの中に組み込んで、 他言語との密接な統合が可能なインターフェースとして使用することができる〔「」、1997年, pp. 94, 96.〕。
名前「」は「」から来ている。後付けのものではないが(注を参照)公式ウェブページの冒頭にあらわれたのは2011年の春頃である〔Internet Archive Weyback Machine で確認。2011年1月1日のスナップショットには無いが、同年5月14日のアーカイブにはある。1997年7月のGNU's Bulletin, vol. 1 no. 23 で確認できるので、後付けではない。〕。
GNUプロジェクトの「公式の」 拡張言語であるが、 2006年の時点で、人気のあるプロジェクトの中でこの言語を使っているものは十指に満たない。その名称については、での議論の中で、〔「」、 1995年〕によって提唱された。 基本的なアイデアは、「開発者は基本的なアルゴリズムデータ構造CC++に実装し、機能や型をインタープリタ用のコードにエクスポートする。アプリケーションはインタープリタが統括するプリミティブのライブラリとなることで、コンパイルされたコードの効率とインタープリタの柔軟性の双方を備えることができる。」というものである〔 1997年、pp 87.〕。

==標準への遵守 ==
その歴史の多くの部分において、は標準に厳密に従っていたわけではなかった。
〔「」、1995年〕

現在のでは、空のリストとブーリアン型#fは区別される。シンボルの大文字/小文字は区別されるが、のレキシカルスキャナ兼パーサである における分岐により、はシンボルでの大文字/小文字の区別をやめることができる。最近採用された標準R6RSは、R5RS以前の標準から離れて、大文字/小文字の区別をデフォルトとして採用している。
とアプリケーションとの密接な連携にはコストが伴う。は再帰を頻繁に行うので、末尾再帰を最適化した実装を要求するが、ほとんどのテクニックは相互運用性を損なうものである。は、純粋にの関数やプログラムの中で末尾再帰を最適化するよう妥協し、C言語関数が視野に入ったときは末尾再帰をあきらめるということを強いられる〔Blandy 1997, p. 99.〕。標準のもうひとつの要求であるの実装も、不満足なものである。— C言語で継続を扱うには、C言語のスタック全体をヒープにコピーすることが必要になる〔「」、1997年、p. 99.〕。ガベージコレクションもまた、効率的なものとはなりえない。C言語のコードはのコードへのポインタを持つことができなければならないからだ。必要なセルの消失を避けるためには、のガベージコレクタは保守的なものにならざるを得ず、再利用される可能性のあるセルを失う可能性がある〔、1997年、pp. 99–100.〕。

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「GNU Guile」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.